A storage server may comprise a computer configured to provide storage functionality relating to organization and accessibility of data stored on storage devices, such as non-volatile storage media. The storage server may be configured to operate according to a client/server model to enable clients to access data through the storage server.
A storage server may store data on various types of non-volatile storage media, such as relatively high latency (e.g., longer access times) hard disk drives (HDDs) and relatively low latency (e.g., shorter access times) solid state devices (SSDs). Latency (e.g., access time) generally corresponds to a period of time needed to retrieve data from a storage device. HDD access time may be a function of disk spin-up time, seek time, rotational delay, and/or data transfer time. Spin-up time may be a time needed to accelerate a disk to operating speed. Seek time may be a time for an access arm of the disk to reach a desired disk track. Rotational delay may be a delay for rotation of the disk to bring a desired disk sector under a read-write mechanism, which may be dependent upon rotational speed of the disk. Data transfer time may be a time during which data is read from and/or written to the storage media.
HDDs may store data on rapidly rotating platters with magnetic surfaces (e.g., an HDD may comprise magnetic storage media). Because HDDs may access data mechanically, access times of HDDs may be relatively slow due to mechanical delays (e.g., owing to disk spin-up time, seek time, rotational delay, and/or data transfer time). SSDs may store data within solid state memory, such as non-volatile flash memory, to store persistent data (e.g., an SSD may comprise electronic storage media). Because SSDs may access data with little to no mechanical movement, access times of SSDs may be relatively fast (e.g., low latency). Unfortunately, SSD storage media may be more expensive than HDD storage media, and may have a shorter operational lifetime due to wear and other degradation.